Data networks may be used to communicate data among multiple network devices and may be implemented using a mesh networking topology. There may be times when a large file, such as a firmware update, is transmitted across the network. During a firmware update, the network might become so saturated with packets that a high percentage, e.g., 80% to 90%, of packets fail to reach their destination. The packets that fail to reach their destination have to be retransmitted, with a loss rate that is likely to be similar. In some situations, the wait time between packets is selected to try and address this problem. However, selecting a single value for the wait time is challenging. If the wait time is too long, then the upgrade takes an unnecessarily long time to complete. If the wait time is too short then the percentage of packets that do not reach their destination is too high. If the network traffic varies considerably, then there may not be a single optimum time. Thus, it is desirable to provide systems and methods for improving the efficiency of the transmission of large files across a network.